package negocio;

import java.util.List;

import basica.Categoria;
import basica.Produto;
import generic.DAOFactory;
import idao.IDAOCategoria;
import idao.IDAOProduto;

public class ProdutoNegocio {
	private IDAOProduto produtoDAO;
	private IDAOCategoria categoriaDAO;
	
	public ProdutoNegocio() {
		produtoDAO = DAOFactory.getProdutoDAO();
		categoriaDAO = DAOFactory.getCategoriaDAO();
	}

	// ==================================================
	// MÉTODOS DE PRODUTOS
	// ==================================================
	
	public void inserirProduto(Produto entidade) {
		produtoDAO.inserir(entidade);
	}

	public void alterar(Produto entidade) {
		produtoDAO.alterar(entidade);
	}

	public void remover(Produto entidade) {
		produtoDAO.remover(entidade);
	}

	public Produto consultarPorId(Integer id) {
		return produtoDAO.consultarPorId(id);
	}

	public List<Produto> consultarTodosProdutos() {
		return produtoDAO.consultarTodos();
	}

	// ==================================================
	// MÉTODOS DE CATEGORIAS
	// ==================================================
	
	public void inserir(Categoria entidade) {
		categoriaDAO.inserir(entidade);
	}

	public void alterar(Categoria entidade) {
		categoriaDAO.alterar(entidade);
	}

	public void remover(Categoria entidade) {
		categoriaDAO.remover(entidade);
	}

	public List<Categoria> consultarTodosCategorias() {
		return categoriaDAO.consultarTodos();
	}
	
	// ==================================================
	// MÉTODOS
	// ==================================================
	
	//INCLUIR OU ALTERAR PRODUTO	
	/*
		public void inserirProduto(Produto produto) {
			Calendar c = Calendar.getInstance();
			c = Datas.converterDateToCalendar(c.getTime());
			
			// Verifica se o usuário já foi cadastrado
			Usuario usuarioJaCadastrado = usuarioDAO.consultarUsuarioPorCpf(usuario.getCpf());
			
			if (usuarioJaCadastrado == null) {
				usuario.setStatusUsuario(StatusUsuario.ATIVO);
				usuario.setDataCadastro(c);
				usuarioDAO.inserir(usuario);
				System.out.println("Usuário cadastrado com sucesso.");
			} else {
				usuario.setDataAtualizacao(c);
				usuarioDAO.alterar(usuario);
				System.out.println("Usuário atualizado com sucesso.");
			}
			
		}
	*/
	
	
}
